package com.larly.model.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 用户消息表
 * @TableName user_message
 */
@TableName(value ="user_message")
@Data
public class UserMessage implements Serializable {
    /**
     * 主键
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 发送者用户ID（对于系统通知可为空）
     */
    private Long fromUserId;

    /**
     * 接收消息的用户ID
     */
    private Long userId;

    /**
     * 消息类型 (like: 点赞, follow: 关注, comment: 评论, message: 私信)
     */
    private String type;

    /**
     * 关联的实体ID (如笔记ID、用户ID等)
     */
    private Long entityId;

    /**
     * 消息内容
     */
    private String content;

    /**
     * 是否已读 (0: 未读, 1: 已读)
     */
    private Integer isRead;

    /**
     * 创建时间
     */
    private Date createTime;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}